Various backup and recovery software products have been developed to centralize, automate, and accelerate data backup and recovery across different information technology (IT) and enterprise environments. The goal of such products is to efficiently back up and recover data in the event of user error, data loss, system outages, hardware failure, or other catastrophic events to allow business applications to remain in service or quickly come back up to service after an outage.
Various types of backup methods and technologies are available in large-scale computer network systems with regard to the speed and amount of data that is stored up per backup session. The three main types of backups are full, incremental, and differential backups. Full or traditional (normal) backup methods back up all files on a drive or partition every time a backup is performed, while an incremental backup backs up only those files that are changed or added since the last incremental backup, and a differential backup backs up files that have changed since the last full backup. These different strategies impose different time requirements, processor overhead, and resource costs, and they also provide different amounts of security and ease of restoration. For example, a full backup takes the longest time to perform but generally features the fastest restore time since all the data is readily available on the target storage (e.g., tape or disk). In contrast, incremental and differential backups may feature much faster backup times but longer restore times and increased processor overhead since changed files must be correctly indexed (tagged) and identified during the backup and restore operations.
The type and amount of target storage also impacts the choice of backup type since the speed and volatility of such memory may also affect backup strategies. Target storage devices typically comprise arrays of tape devices, optical disk devices, or magnetic disk devices, such as RAID (redundant array of inexpensive disks) arrays, and virtual storage devices. These memory devices typically feature significantly different access times, densities (e.g., high, medium, low), and other practical features, such as cost and power consumption and heat generation. Thus, while it is generally true that performing full backups are not practical for every situation, since many large organizations have too much data to efficiently backup on a periodic basis, it is sometimes true that incremental or differential backups are not necessarily optimum given the amount of changed data, type of data, target storage devices, restore time and data protection requirements, and other practical factors.
In the field of data backup and information protection, predictability of backup windows (i.e., duration of time to perform a data backup) is an important aspect yet it is very hard to find a solution that can provide such predictability with a sufficient degree of accuracy for many time critical applications. System administrators and backup technicians often admit that one of the biggest challenges they face is how to predict the backup window and the preferred backup and storage technology for a given data protection task. Most of the time, the optimum solution is simply derived by extrapolation or guess work, and is highly dependent on the actual application and/or system configuration. This makes present backup techniques and systems ill-suited to provide real-time data acquisition and IT systems where predictable or deterministic backup operations are required or highly beneficial. This is also big disadvantage for organizations that do not have experienced system administrators or personnel who are experienced in backup operations and have a wealth of information regarding the efficacy and impact of different backup methods that might be available.
What is needed, therefore, is a backup system that automates the process of determining an optimum backup method for a particular backup and restore scenario, and that facilitates the automation of the backup process itself.
What is further needed is a backup method that provides real time responsiveness and that is based on analytic data built from actual backup environments to provide accurate predictability of backup windows for various different data sources.
What is yet further needed is a backup system that that achieves strict recover time objectives during disaster or failure incidences and that reduces or makes more efficient usage of available storage resources.